995B - Suit and Tie - CodeForces Solution


greedy implementation math *1400

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin >> n;
    vector<long long> a(2 * n);
    map<long long, int> Map;
    long long ans = 0;
    for (int i = 0; i < 2 * n; i++) {
        cin >> a[i];
        Map[a[i]] = i;
    }
    for (int i = 0; i < 2 * n; i += 2){
        for (int j = Map[a[i]]; a[j - 1] != a[i]; j--) {
            Map[a[j - 1]] = max(j , Map[a[j - 1]]);
            swap(a[j], a[j - 1]);
            ans++;
        }
    }

    cout << ans << endl;
    return 0;
}


Comments

Submit
0 Comments
More Questions

102B - Sum of Digits
707A - Brain's Photos
1331B - Limericks
305B - Continued Fractions
1165B - Polycarp Training
1646C - Factorials and Powers of Two
596A - Wilbur and Swimming Pool
1462B - Last Year's Substring
1608B - Build the Permutation
1505A - Is it rated - 2
169A - Chores
765A - Neverending competitions
1303A - Erasing Zeroes
1005B - Delete from the Left
94A - Restoring Password
1529B - Sifid and Strange Subsequences
1455C - Ping-pong
1644C - Increase Subarray Sums
1433A - Boring Apartments
1428B - Belted Rooms
519B - A and B and Compilation Errors
1152B - Neko Performs Cat Furrier Transform
1411A - In-game Chat
119A - Epic Game
703A - Mishka and Game
1504C - Balance the Bits
988A - Diverse Team
1312B - Bogosort
1616B - Mirror in the String
1660C - Get an Even String